FIG. 1 illustrates an example EPS network architecture. A User Equipment (UE) 100 may interact with the EPS network using the Evolved Universal Terrestrial Radio Access Network (E-UTRAN) radio access 102. UE-related control signaling (S1-MME) is handled by Mobility Management Entity (MME) 104 with support of subscription information provided by the Home Subscriber Server (HSS) 106. User payload is handled by the SGW 108 and the PGW 110. The PGW 110 may interact with a Policy and Charging Rules Function (PCRF) 112.
The PGW 110 and SGW 108 collect charging information. This data is sent to a Charging Control Function over an Rf interface or stored to a local disk. A Gn/Gp SGSN and a GGSN charge for GSM/EDGE Radio access network (GERAN)/Universal Terrestrial Radio Access Network (UTRAN) access where the Gn/Gp serving general packet radio service (GPRS) support node (SGSN) role is similar to the SGW 108 role and the gateway GPRS support node (GGSN) role is similar to the PGW 110 role.
The PGW 110 tracks the number of packets and number of bytes forwarded by the PGW 110 in the uplink direction and separately in the downlink direction. This tracking is done for each EPS bearer separately. PGW 110 can also split one EPS bearer into more than one IP flow for charging purposes (SDF flows). PGW 110 can also implement online charging functions (e.g. checks of end user credit). These are reasons why an operator may prefer to use PGW 110 charging records. The SGW 108 tracks the number of packets and number of bytes forwarded by the SGW 108 in the uplink direction and separately in the downlink direction. This tracking is done for each EPS bearer separately.
Many problems are associated with using the PGW charging collection information in the downlink direction. In the uplink direction, the user plane packets have already passed the radio, eNodeB, SGW and PGW (if permitted). Therefore, uplink data that was successfully sent to the Internet (or similar network) is accurately reflected at the PGW. However, the PGW is completely unaware of whether the UE is in the Evolved Packet System Connection Management (ECM) connected state or the ECM idle state. Hence, the PGW charges for downlink data even though the SGW does not attempt to send data to the UE while the UE is in the ECM idle state.
Therefore, the PGW almost always overcharges the end user for downlink data (possibly in very large quantities). Since an operator in a non-roaming situation has the ability to take charging records from both the SGW and PGW, where the PGW records for the downlink direction are compared to the SGW records, the actual billing is adjusted proportionately by the billing systems. However, the method assumes that the SGW charging record is collected. Furthermore, many operators want to depend solely on PGW charging records. Also, in roaming cases, the PGW charging records and SGW charging records can be very much out of sync making “reconciliation/mediation” of the differences difficult.
FIGS. 2 and 3 are sequence diagrams illustrating common problem scenarios. Particularly, FIG. 2 illustrates the scenario where, when the UE is out of coverage, the UE is slow to respond, and there is a large burst of downlink data while the UE is idle. For example, as illustrated in FIG. 2, the PGW sends a large burst of downlink data (200) to the SGW. However, since the UE is out of range, the data at the SGW cannot be transmitted to the UE, and the data buffer of the SGW becomes filled up leading to data drops (202A, 202B). The SGW receives notification of downlink data failure (204) after the UE has failed to respond to multiple pages (206A, 206B, 206C) from the MME. When this occurs, all buffered data for the UE is dropped (208), and the SGW does not charge the UE for the downlink data (210). However, the PGW charges the UE for all downlink data (212), which is incorrect.
A problem also exists even if the UE responds on the first page (206A). For example, consider a User Data Protocol (UDP) downlink stream at 8 Megabits/sec with 1500 bytes per packet (i.e., 666 packets per second). A UE idle mode discontinuous reception (DRX) cycle can be as high as 2.56 seconds. Therefore, up to 2.56×666=1707 packets, and 2.56 Megabytes of data may be sent even before the UE responds to a page with perfect operation of all entities.
FIG. 3 illustrates a situation where SGW determines that the UE is in the ECM idle state upon receiving the S11 Release Access Bearer Request (300). There is a potential mismatch between PGW and SGW records after this point due to the UE being in the ECM idle state if downlink packets still come in at high rate (see previous example at 8 Megabits/sec). This situation is qualitatively similar to the previous case. However, there is also a quantitative difference with respect to the previous case. First, abnormal radio release (302) means that the UE had radio coverage at one point, but the radio degraded and the eNodeB was unable to handover the UE to a better cell, and the UE subsequently lost RRC abnormally. The UE is also very likely to be temporarily out of coverage at this point. So any downlink at this time is very likely to result in paging failure. Second, downlink data rates over TCP while a UE is in the ECM idle state are only expected when the UE was very recently ECM connected, either because connection was good and TCP receive window was large on the UE, or because connection was bad and major TCP downlink retransmissions were occurring in the downlink direction. Therefore, this special case is a more acute case of the general case and warrants special handling. As illustrated in FIG. 3, even after reception of the request 300, the PGW continues to transmit data that is charged to the UE.
An identical situation exists in UTRAN/GERAN accesses except state ECM-IDLE is replaced with PMM-Idle or Standby, and ECM-Connected is replaced with PMM-Connected.